package com.Day8;

/**
 * Copyright (C), 2018-2021, 若若叶
 * Author: Hx162
 * Date: 2021/7/16 12:25
 * FileName: T3
 * Description: java练习题
 */

/**
 * 【程序3】
 * 题目：打印出所有的 "水仙花数 "，所谓 "水仙花数 "是指一个三位数，其各位数字立方和等于该数本身。
 * 例如：153是一个 "水仙花数 "，
 * 因为153=1的三次方＋5的三次方＋3的三次方。
 * 1.程序分析：利用for循环控制100-999个数，每个数分解出个位，十位，百位。
 */
public class T3 {
    public static void narcissisticNumber() {
        for (int i = 100; i < 999; i++) {
            int a = i % 100;
            //百位
            int x = i / 100;
            //十位
            int y = a / 10;
            //个位
            int z = a % 10;
            //判断
            if (x * x * x + y * y * y + z * z * z == i) {
                System.out.print(i + " ");
            }
        }
    }

    public static void main(String[] args) {
        narcissisticNumber();  // 153 370 371 407
    }
}
